package com.hp.modules.sys.dto;

import com.hp.common.base.YesNoEnum;
import com.hp.common.validator.Groups;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;

import javax.validation.constraints.NotBlank;
import javax.validation.constraints.NotNull;

/**
 * @version 1.0
 * @ClassName SysMenuParam
 * @Description TODO
 * @Auth mcfan
 * @Date 2021/7/23 15:19
 **/
@ApiModel(description = "菜单")
public class SysMenuParam {

    @ApiModelProperty(value = "主键-更新时必填",position = 1)
    @NotNull(message = "主键不能为空",groups = {Groups.Update.class})
    private Long id;
    @ApiModelProperty(value = "父菜单id",required = false,position = 10)
    private Long parentId;
    @ApiModelProperty(value = "菜单名称",required = true,position = 15)
    @NotBlank(message = "菜单名称不能为空",groups = {Groups.Save.class,Groups.Update.class})
    private String name;
    @ApiModelProperty(value = "排序",required = false,position = 20)
    private Double sort;
    @ApiModelProperty(value = "路由名称",required = false,position = 25)
    private String routeName;
    @ApiModelProperty(value = "路由地址",required = false,position = 30)
    private String path;
    @ApiModelProperty(value = "图标",required = false,position = 35)
    private String icon;
    @ApiModelProperty(value = "是否显示(1->不显示|NO,2->显示|YES)",required=false, position = 40)
    private YesNoEnum isShow;
    @ApiModelProperty(value = "是否显示(1->不显示|NO,2->显示|YES)",required=false, position = 45)
    private String remark;
    @ApiModelProperty(value = "备注",required=false, position = 50)
    public Long getId() {
        return id;
    }

    public void setId(Long id) {
        this.id = id;
    }

    public Long getParentId() {
        return parentId;
    }

    public void setParentId(Long parentId) {
        this.parentId = parentId;
    }

    public String getName() {
        return name;
    }

    public void setName(String name) {
        this.name = name;
    }

    public Double getSort() {
        return sort;
    }

    public void setSort(Double sort) {
        this.sort = sort;
    }

    public String getRouteName() {
        return routeName;
    }

    public void setRouteName(String routeName) {
        this.routeName = routeName;
    }

    public String getPath() {
        return path;
    }

    public void setPath(String path) {
        this.path = path;
    }

    public String getIcon() {
        return icon;
    }

    public void setIcon(String icon) {
        this.icon = icon;
    }

    public YesNoEnum getIsShow() {
        return isShow;
    }

    public void setIsShow(YesNoEnum isShow) {
        this.isShow = isShow;
    }

    public String getRemark() {
        return remark;
    }

    public void setRemark(String remark) {
        this.remark = remark;
    }
}
